package com.ruoyi.listen.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.teach.domain.TeachCourse;

/**
 * 听课申请对象 listen_apply
 * 
 * @author yepanpan
 * @date 2021-03-15
 */

@ApiModel("听课申请实体")
@Data
public class ListenApply extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 自增长主键ID */
    @ApiModelProperty("${comment}")
    private Long id;

    /** 听课日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "听课日期", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("听课日期")
    private Date listenDate;

    /** 课程 */
    @ApiModelProperty("课程")
    private Long courseId;
    
    @Excel(name = "课程")
    private String courseName;

    /** 教师 */
    @ApiModelProperty("教师")
    private Long teacherId;

    @Excel(name = "授课教师")
    private String teacherName;

    /** 节次 */
    @Excel(name = "节次", dictType = "teach_section")
    @ApiModelProperty("节次")
    private String section;

    /** 申请原因 */
    @ApiModelProperty("申请原因")
    @Excel(name = "申请原因")
    private String reason;

    /** 审核人 */
    @ApiModelProperty("审核人")
    private Long checkUserId;

    /** 审核结果 */
    @Excel(name = "审核结果", dictType = "check_status")
    @ApiModelProperty("审核结果")
    private String checkStatus;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("审核时间")
    private Date checkTime;

    /** 审核不通过原因 */
    @ApiModelProperty("审核不通过原因")
    private String checkReason;


    @Excel(name = "申请教师")
    private String applyerName;
}
